#ifndef FINDDIALOG_H
#define FINDDIALOG_H
#include<QDialog>
class QWidget;      //只用到指针可以前置声明，可以不包含整个头文件
class QLabel;
class QLineEdit;
class QCheckBox;
class QPushButton;
class FindDialog:public QDialog
{
    Q_OBJECT                       //对于所有定义了信号和槽的类，在类定义开始处的Q_Object宏都是必需的
public:
    FindDialog(QWidget* parent=0); //所有部件都是窗口，所有窗口都要有层次指定父窗口，布局管理器可以不用显示指定父窗口

signals:
    void findPrevious(const QString &str, Qt::CaseSensitivity cs);
    void findNext(const QString &str, Qt::CaseSensitivity cs);

private slots:
    void enabledFindButton(const QString &text);
    void findClicked();
                                   //信号和槽实质都是函数
private:
    QLabel *label;
    QLineEdit *lineEdit;
    QCheckBox *caseCheckBox;
    QCheckBox *backwardCheckBox;
    QPushButton *findButton;
    QPushButton *closeButton;
};

#endif // FINDDIALOG_H
